package cn.tude.boot22.mapper;

import cn.tude.boot22.entity.Hero;
import org.apache.ibatis.annotations.*;

import java.sql.ResultSet;
import java.util.List;

/**
 * @Classname: HeroMapper
 * @Author: bromide
 * @CreateTime: 2022/5/11--15:08
 * @Version: V1.0
 * @Description:
 */
@Mapper
public interface HeroMapper {


    /*
        #{xxx} 会从下面方法的参数列表中找到同名的变量,如果
        找不到同名变量则进入到对象里面查找同名的get方法
        Mybatis框架会根据此方法声明生成具体的实现类实现此方法,方法内部就是jdbc代码
     */
    @Insert("insert into hero values(null,#{name},#{money})")
    void insert(Hero hero);

    @Delete("delete from hero where name=#{name}")
    void deleteByName(String name);

    @Update("update hero set money=#{money},name=#{name} where id=#{id}")
    void updateById(Hero hero);

    @Select("select * from hero")
    List<Hero> select();
}
